﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Mobwiz.SpellChecker.Core
{
    public class ConvertProgressChangedEventArgs : EventArgs
    {
        public string Word { get; set; }
        public int Total { get; set; }
        public int Current { get; set; }

        public ConvertProgressChangedEventArgs(string word, int current, int total)
        {
            this.Word = word;
            this.Current = current;
            this.Total = total;
        }
    }

    public interface IDictionaryGenerator : IDisposable
    {
        event EventHandler<ConvertProgressChangedEventArgs> ConvertProgressChanged;
        event EventHandler ConvertCompleted;

        IPhonet Phonet { get; set; }

        Dictionary<string, List<string>> DictionarySet { get; }

        void StartConvert(string wordListFilePath);
    }
}
